<<<<<<< HEAD ======= >>>>>>> 7721e6b4b1a3cf0ae2d562509e75d45db439da66

Frame 1

<<<<<<< HEAD
=======
>>>>>>> 7721e6b4b1a3cf0ae2d562509e75d45db439da66

Nuclear Explosions per Country

<<<<<<< HEAD

=======

From 1945-1998, the number of nuclear bomb tests drastically increased over time.

>>>>>>> 7721e6b4b1a3cf0ae2d562509e75d45db439da66

Explosions Per Period

<<<<<<< HEAD

Frame 3

=======

From 1945-1998, the number of nuclear bomb tests drastically increased over time.

>>>>>>> 7721e6b4b1a3cf0ae2d562509e75d45db439da66
---
title: "Storyboard"
output: 
  flexdashboard::flex_dashboard:
    storyboard: true
    social: menu
    source: embed
---

```{r setup, include=FALSE}
library(flexdashboard)
library(tidyverse)
library(htmlwidgets)
library(leaflet)
library(leaflegend)
library(purrr)
library(viridis)
library(vistime)
library(ggplot2)
library(ggthemes)
library(ggpubr)
library(plotly)

explosions <- read_csv("data/nuclear_explosions.csv")
```


### Frame 1

```{r}
# Owen's graph

# Github link: https://github.com/rfordatascience/tidytuesday/tree/master/data/2019/2019-08-20

avg <- function(x, y) {
  num <- (x + y) / 2
}

# Data tidying
explosions2 <- explosions %>% 
  # Rename 'purpose' as indicated in data README
  mutate(map_purpose = if_else(purpose == "COMBAT",
                               "WWII bombs dropped over Japan", purpose),
         map_purpose = if_else(purpose == "FMS",
                               "Soviet test studying phenomenon of nuclear explosion", purpose),
         map_purpose = if_else(purpose == "ME",
                               "Military Exercise", purpose),
         map_purpose = if_else(purpose == "PNE",
                               "Peaceful nuclear explosion", purpose),
         map_purpose = if_else(purpose == "SAM",
                               "Soviet accident test", purpose),
         map_purpose = if_else(purpose == "TRANSP",
                               "Transportation-storage purpose", purpose),
         map_purpose = if_else(purpose == "WE", 
                               "Evaluate effects of nuclear detonation on various targets", purpose),
         map_purpose = if_else(purpose == "WR",
                               "Weapons development program", purpose)) %>% 
  mutate(average = map2_dbl(.x = yield_lower, .y = yield_upper, 
                        ~ avg(.x, .y))) %>% 
  mutate(scaled_average = average / 1000) %>%
  mutate(plot_scaled_average = ifelse(scaled_average < 1, 1, scaled_average)) %>% 
  mutate(popup_info = paste0("<b>Estimated yield (Mt TNT): </b>", scaled_average, "<br/>",
                             "<b>Purpose: </b>", map_purpose, "<br/>",
                             "<b>Country: </b>", country, "<br/>",
                             "<b>Region: </b>", region, "<br/>",
                             "<b>Year: </b>", year, "<br/>"))

# Create a palette for explosion sizes
pal <- colorNumeric(palette = 'viridis', 
                   domain = explosions2$plot_scaled_average,
                   na.color = NA)
# To do:
# Fix popups
# Fix title
# Fix scale so that values < 1 will still show up as 1

leaflet() %>% 
  addTiles() %>% 
  addProviderTiles("Thunderforest.Landscape") %>% 
  addCircleMarkers(data = explosions2, lat = ~ latitude, lng = ~ longitude,
                   radius = ~ plot_scaled_average, 
                   popup = ~ popup_info,
                   stroke = FALSE, fillOpacity = 0.5,
                   color = ~ pal(plot_scaled_average)) %>% 
  addLegend(data = explosions2,
            pal = pal,
            values = ~ plot_scaled_average,
            title = "Worldwide nuclear explosions <br/> Megatonnes of TNT")
```


### Nuclear Explosions Per Country



```{r, echo=FALSE, fig.width=6.5, fig.height=7.5, vertical_layout: scroll}

major_events <- read.csv("data/Major Events.csv")

#Generate Separate Datasets by Periods

explosion_event <- major_events %>%
  full_join(explosions, by = "year")

explosions_1945_1954 <- explosion_event %>%
  filter(year <= 1954) %>%
  filter(!is.na(region)) 

region_1945_1954 <- explosions_1945_1954 %>%
  group_by(region) %>%
  summarize(count = n())%>%
  right_join(explosions_1945_1954, by = 'region')

explosions_1953_1959 <- explosion_event %>%
  filter(year >= 1953 & year <= 1959) %>%
  filter(!is.na(region))

region_1953_1959 <- explosions_1953_1959 %>%
  group_by(region) %>%
  summarize(count = n()) %>%
  right_join(explosions_1953_1959, by = 'region')

explosions_1955_1975 <- explosion_event %>%
  filter(year >= 1955 & year <= 1975) %>%
  filter(!is.na(region))

region_1955_1975 <- explosions_1955_1975 %>%
  group_by(region) %>%
  summarize(count = n())%>%
  right_join(explosions_1955_1975, by = 'region') 

explosions_1979_1989 <- explosion_event %>%
  filter(year >= 1979 & year <= 1989) %>%
  filter(!is.na(region))

region_1979_1989 <- explosions_1979_1989 %>%
  group_by(region) %>%
  summarize(count = n())%>%
  right_join(explosions_1979_1989, by = 'region')

#plot looking at trend of each country from 1945 to 1998

counts_by_year <- explosion_event %>%
  filter(!is.na(region)) %>%
  group_by(year, country) %>%
  summarize(n = n()) %>%
  mutate(year = as.numeric(year)) %>%
  mutate(country = recode(country, CHINA = "China", FRANCE = "France", INDIA = "India", PAKIST = "Pakistan"))

PAK_events <- counts_by_year %>%
  filter(country == "Pakistan")

nukes_by_year <- ggplot(data=counts_by_year, aes (x = year, y = n, color = country)) +
  geom_line(linewidth = 1) +
  geom_point(data = PAK_events, color="orange") +
  theme_bw() +
  labs(y = "Number of Nuclear Explosion Events",x = "Year") +
  scale_x_continuous(breaks = seq(1945, 2000, 5), limits = c(1945, 1998)) +
  scale_color_manual(breaks = c("China", "France", "India", "Pakistan", "UK", "USA", "USSR"), values = c("hotpink3", "blue", "green3", "orange", "steelblue", "black", "red3")) +
  theme(panel.background = element_blank(),,panel.grid.major = element_blank(),
         panel.grid.minor = element_blank(),plot.background = element_blank()) +
  theme(legend.position = "top", legend.title = element_blank()) +
  guides(colour = guide_legend(nrow = 1)) 

timeline <- data.frame(Position = rep(c("", "", "", "", "", "", "", "", ""), each = 1),
                   Name = c("World War II", "Chinese Civil War", "First IndoChina War", "Korean War", "Cuban Revolution", "Vietnam War", "Lebanese Civil War", "Soviet-Afghan War", "Iran-Iraq War"),
                   start = c("1945-01-01", "1945-01-01", "1946-01-01", "1951-01-01", "1953-01-01", "1955-01-01", "1975-01-01", "1979-01-01", "1980-01-01" ),
                   end = c("1945-12-31", "1949-12-31", "1954-12-31", "1954-12-31", "1959-12-31", "1975-12-31", "1990-12-31", "1989-12-31", "1988-12-31"),
                   color = c("lightgrey", "azure2", "skyblue", "skyblue2", "steelblue","steelblue4",  "blue",  "blue3", "navy"))

wars<- gg_vistime(timeline, col.event = "Position", col.group = "Name") +
  scale_x_datetime(date_breaks = "5 years", date_labels = "%Y", limits = as.POSIXct(c("1945-01-01", "2000-01-01"))) +
  theme_tufte() +
  theme(axis.text.x = element_blank(), axis.ticks.x = element_blank()) +
  theme()


Explosions_Per_Year <- ggarrange(nukes_by_year, wars, nrow = 2, heights = c(3, 1.5), align = 'v')

ggplotly(Explosions_Per_Year)


```
*** 

From 1945-1998, the number of nuclear bomb tests drastically increased over time.

### Explosions Per Period

```{r}

pal1<- leaflet::colorNumeric("viridis", domain = region_1945_1954$count)
pal2<- leaflet::colorNumeric("viridis", domain = region_1953_1959$count)
pal3<- leaflet::colorNumeric("viridis", domain = region_1955_1975$count)
pal4<- leaflet::colorNumeric("viridis", domain = region_1979_1989$count)

#graph with leaflet to generate layers by period

leaflet() %>%
  addTiles() %>%
  addCircleMarkers(data = region_1945_1954, ~longitude, ~latitude , radius = 3, color = ~pal1(count), fillOpacity = 0.7,group = "1945-1954")%>%
  addLegend(data = region_1945_1954,
            position = "bottomright",
            pal = pal1, values = ~count,
            title = "# of Events",
            opacity = 1, group="1945-1954") %>%
  addCircleMarkers(data = region_1953_1959, ~longitude, ~latitude , radius = 3, color = ~pal2(count), fillOpacity = 0.7,group = "1953-1959")%>%
  addLegend(data = region_1953_1959,
            position = "bottomright",
            pal = pal2, values = ~count,
            title = "# of Events",
            opacity = 1, group="1953-1959") %>%
  addCircleMarkers(data = region_1955_1975, ~longitude, ~latitude , radius = 3, color = ~pal3(count), fillOpacity = 0.7,group = "1955-1975")%>%
  addLegend(data = region_1955_1975,
            position = "bottomright",
            pal = pal3, values = ~count,
            title = "# of Events",
            opacity = 1, group = "1955-1975") %>%
  addCircleMarkers(data = region_1979_1989, ~longitude, ~latitude , radius = 3, color = ~pal4(count), fillOpacity = 0.7,group = "1979-1989")%>%
  addLegend(data = region_1979_1989,
            position = "bottomright",
            pal = pal4, values = ~count,
            title = "# of Events",
            opacity = 1, group = "1979-1989") %>%
  addLayersControl(overlayGroups = c("1945-1954", "1953-1959", "1955-1975", "1979-1989"), position = "topright", options = layersControlOptions(collapsed = F)) %>%
  hideGroup(c("1953-1959", "1955-1975", "1979-1989"))

```

*** 

From 1945-1998, the number of nuclear bomb tests drastically increased over time.